<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>严格模式</title>
    <script src=''></script>
</head>
<body>
    <script>
        // 一、严格模式的声明 
        //1. 全局声明
        'use strict';
        //2. 函数内声明
        // function main(){
        //     'use strict';
        // }

        // 二、严格模式的特性
        //1) 不允许使用未声明的变量 
        // banzhuren = 'xiaochengzi';
        // console.log(banzhuren);
        //2) 函数内部的 this 不指向 window
        // function fn(){
        //     console.log(this);
        // }
        // fn();
        //3) eval 作用域   eval 是一个函数, 接受字符串参数, 
        //会对字符串进行 JS 语法解析并运行
        // eval('var a = 100;var b = 200');
        // console.log(a, b);

        //4) 对象不能有重复的属性
        // let obj = {
        //     a: 100,
        //     a: 200
        // }

        //5) 严格模式下 函数不允许有同名的形参
        // function main(a,a,a){
        // }

        //6) 新增一些保留字  private protected implements
        // var private = '私有的';

    </script>
</body>
</html>